package frame

import (
	"stormragetech/dawn/data"

	"gopkg.in/mgo.v2/bson"
)

func init() {
	data.GetConn("test", "sys_dept")
}

// Dept 部门 结构体
type Dept struct {
	ID       bson.ObjectId `bson:"_id"`
	DeptID   string        `bson:"dept_id"`
	Name     string        `bson:"name"`
	ParentID string        `bson:"p_id"`
	CompID   string        `bson:"comp_id"`
	CompType int           `bson:"comp_type"`
	Locked   bool          `bson:"locked"`
}

// InsDept 新增部门
func InsDept(d Dept) error {
	return data.Conn.Insert(d)
}

// FindByDeptID 通过ID查询部门
func FindByDeptID(id string) (Dept, error) {
	d := Dept{}
	err := data.Conn.Find(bson.M{"dept_id": id}).One(&d)
	return d, err
}

// ListByParentID 通过上级部门ID查询部门
func ListByParentID(id string) ([]Dept, error) {
	d := []Dept{}
	err := data.Conn.Find(bson.M{"p_id": id}).All(&d)
	return d, err
}
